/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package org.liquidByte.trafficMustang.server.repository;

import java.util.List;

/**
 *
 * @author Alexandre
 */
public interface ReadableRepository<T> {
    /**
     * Busca toda a listagem da tabela especificada
     * pelo template da interface
     * @return 
     */
    List<T> getAll();
    
    /**
     * Busca o elemento da tabela especifcada
     * pelo template de acordo com a chave primária
     * passada como parametro
     * @param id
     * @return 
     */
    T getById(Object id);
    
    /**
     * Força um flush no entity manager
     */
    void flush();
}
